<!DOCTYPE HTML>
<html lang="zh-CN">


<head>
    <meta charset="utf-8">
    <meta name="keywords" content="生活的智慧, ZJZ&#39;s Blogs">
    <meta name="description" content="
本篇来源于[垠神]的生活的智慧，觉得对生活有启迪转载于此

我曾经写过一篇文章，叫『编程的智慧』。再加上我总写一些技术性的文章，不认识我的人可能还以为我是个技术狂人，只知道谈论技术，不会生活。其实跟我接触紧密的人都知道，我是一个很会生活的">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
    <meta name="renderer" content="webkit|ie-stand|ie-comp">
    <meta name="mobile-web-app-capable" content="yes">
    <meta name="format-detection" content="telephone=no">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
    <meta name="referrer" content="no-referrer-when-downgrade">
    <!-- Global site tag (gtag.js) - Google Analytics -->


    <title>生活的智慧 | ZJZ&#39;s Blogs</title>
    <link rel="icon" type="image/png" href="/programming/favicon.png">
    


    <!-- bg-cover style     -->



<link rel="stylesheet" type="text/css" href="/programming/libs/awesome/css/all.min.css">
<link rel="stylesheet" type="text/css" href="/programming/libs/materialize/materialize.min.css">
<link rel="stylesheet" type="text/css" href="/programming/libs/aos/aos.css">
<link rel="stylesheet" type="text/css" href="/programming/libs/animate/animate.min.css">
<link rel="stylesheet" type="text/css" href="/programming/libs/lightGallery/css/lightgallery.min.css">
<link rel="stylesheet" type="text/css" href="/programming/css/matery.css">
<link rel="stylesheet" type="text/css" href="/programming/css/my.css">
<link rel="stylesheet" type="text/css" href="/programming/css/dark.css" media="none" onload="if(media!='all')media='all'">




    <link rel="stylesheet" href="/programming/libs/tocbot/tocbot.css">
    <link rel="stylesheet" href="/programming/css/post.css">




    
        <link rel="stylesheet" type="text/css" href="/programming/css/reward.css">
    



    <script src="/programming/libs/jquery/jquery-3.6.0.min.js"></script>

<meta name="generator" content="Hexo 6.3.0"><link rel="alternate" href="/programming/atom.xml" title="ZJZ's Blogs" type="application/atom+xml">
</head>


<body>
    <header class="navbar-fixed">
    <nav id="headNav" class="bg-color nav-transparent">
        <div id="navContainer" class="nav-wrapper container">
            <div class="brand-logo">
                <a href="/programming/" class="waves-effect waves-light">
                    
                    <img src="/programming/medias/logo.png" class="logo-img" alt="LOGO">
                    
                    <span class="logo-span">ZJZ&#39;s Blogs</span>
                </a>
            </div>
            

<a href="#" data-target="mobile-nav" class="sidenav-trigger button-collapse"><i class="fas fa-bars"></i></a>
<ul class="right nav-menu">
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/programming/" class="waves-effect waves-light">
      
      <i class="fas fa-home" style="zoom: 0.6;"></i>
      
      <span>首页</span>
    </a>
    
  </li>
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/programming/tags" class="waves-effect waves-light">
      
      <i class="fas fa-tags" style="zoom: 0.6;"></i>
      
      <span>标签</span>
    </a>
    
  </li>
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/programming/categories" class="waves-effect waves-light">
      
      <i class="fas fa-bookmark" style="zoom: 0.6;"></i>
      
      <span>分类</span>
    </a>
    
  </li>
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/programming/archives" class="waves-effect waves-light">
      
      <i class="fas fa-archive" style="zoom: 0.6;"></i>
      
      <span>归档</span>
    </a>
    
  </li>
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/programming/about" class="waves-effect waves-light">
      
      <i class="fas fa-user-circle" style="zoom: 0.6;"></i>
      
      <span>关于</span>
    </a>
    
  </li>
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/programming/contact" class="waves-effect waves-light">
      
      <i class="fas fa-comments" style="zoom: 0.6;"></i>
      
      <span>留言板</span>
    </a>
    
  </li>
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/programming/friends" class="waves-effect waves-light">
      
      <i class="fas fa-address-book" style="zoom: 0.6;"></i>
      
      <span>友情链接</span>
    </a>
    
  </li>
  
  <li>
    <a href="#searchModal" class="modal-trigger waves-effect waves-light">
      <i id="searchIcon" class="fas fa-search" title="搜索" style="zoom: 0.85;"></i>
    </a>
  </li>
  <li>
    <a href="javascript:;" class="waves-effect waves-light" onclick="switchNightMode()" title="深色/浅色模式" >
      <i id="sum-moon-icon" class="fas fa-sun" style="zoom: 0.85;"></i>
    </a>
  </li>
</ul>


<div id="mobile-nav" class="side-nav sidenav">

    <div class="mobile-head bg-color">
        
        <img src="/programming/medias/logo.png" class="logo-img circle responsive-img">
        
        <div class="logo-name">ZJZ&#39;s Blogs</div>
        <div class="logo-desc">
            
            Never really desperate, only the lost of the soul.
            
        </div>
    </div>

    <ul class="menu-list mobile-menu-list">
        
        <li class="m-nav-item">
	  
		<a href="/programming/" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-home"></i>
			
			首页
		</a>
          
        </li>
        
        <li class="m-nav-item">
	  
		<a href="/programming/tags" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-tags"></i>
			
			标签
		</a>
          
        </li>
        
        <li class="m-nav-item">
	  
		<a href="/programming/categories" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-bookmark"></i>
			
			分类
		</a>
          
        </li>
        
        <li class="m-nav-item">
	  
		<a href="/programming/archives" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-archive"></i>
			
			归档
		</a>
          
        </li>
        
        <li class="m-nav-item">
	  
		<a href="/programming/about" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-user-circle"></i>
			
			关于
		</a>
          
        </li>
        
        <li class="m-nav-item">
	  
		<a href="/programming/contact" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-comments"></i>
			
			留言板
		</a>
          
        </li>
        
        <li class="m-nav-item">
	  
		<a href="/programming/friends" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-address-book"></i>
			
			友情链接
		</a>
          
        </li>
        
        
        <li><div class="divider"></div></li>
        <li>
            <a href="https://github.com/blinkfox/hexo-theme-matery" class="waves-effect waves-light" target="_blank">
                <i class="fab fa-github-square fa-fw"></i>Fork Me
            </a>
        </li>
        
    </ul>
</div>


        </div>

        
            <style>
    .nav-transparent .github-corner {
        display: none !important;
    }

    .github-corner {
        position: absolute;
        z-index: 10;
        top: 0;
        right: 0;
        border: 0;
        transform: scale(1.1);
    }

    .github-corner svg {
        color: #0f9d58;
        fill: #fff;
        height: 64px;
        width: 64px;
    }

    .github-corner:hover .octo-arm {
        animation: a 0.56s ease-in-out;
    }

    .github-corner .octo-arm {
        animation: none;
    }

    @keyframes a {
        0%,
        to {
            transform: rotate(0);
        }
        20%,
        60% {
            transform: rotate(-25deg);
        }
        40%,
        80% {
            transform: rotate(10deg);
        }
    }
</style>

<a href="https://github.com/blinkfox/hexo-theme-matery" class="github-corner tooltipped hide-on-med-and-down" target="_blank"
   data-tooltip="Fork Me" data-position="left" data-delay="50">
    <svg viewBox="0 0 250 250" aria-hidden="true">
        <path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path>
        <path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2"
              fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path>
        <path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z"
              fill="currentColor" class="octo-body"></path>
    </svg>
</a>
        
    </nav>

</header>

    



<div class="bg-cover pd-header post-cover" style="background-image: url('/programming/medias/featureimages/19.jpg')">
    <div class="container" style="right: 0px;left: 0px;">
        <div class="row">
            <div class="col s12 m12 l12">
                <div class="brand">
                    <h1 class="description center-align post-title">生活的智慧</h1>
                </div>
            </div>
        </div>
    </div>
</div>




<main class="post-container content">

    
    <div class="row">
    <div id="main-content" class="col s12 m12 l9">
        <!-- 文章内容详情 -->
<div id="artDetail">
    <div class="card">
        <div class="card-content article-info">
            <div class="row tag-cate">
                <div class="col s7">
                    
                    <div class="article-tag">
                        
                            <a href="/programming/tags/%E9%97%B2%E8%B0%88/">
                                <span class="chip bg-color">闲谈</span>
                            </a>
                        
                            <a href="/programming/tags/%E5%B8%B8%E8%AF%86/">
                                <span class="chip bg-color">常识</span>
                            </a>
                        
                    </div>
                    
                </div>
                <div class="col s5 right-align">
                    
                    <div class="post-cate">
                        <i class="fas fa-bookmark fa-fw icon-category"></i>
                        
                            <a href="/programming/categories/%E6%97%A5%E5%B8%B8%E7%94%9F%E6%B4%BB/" class="post-category">
                                日常生活
                            </a>
                        
                    </div>
                    
                </div>
            </div>

            <div class="post-info">
                
                <div class="post-date info-break-policy">
                    <i class="far fa-calendar-minus fa-fw"></i>发布日期:&nbsp;&nbsp;
                    2024-01-19
                </div>
                

                

                

                

                
            </div>
        </div>
        <hr class="clearfix">

        
        <!-- 是否加载使用自带的 prismjs. -->
        <link rel="stylesheet" href="/programming/libs/prism/prism.min.css">
        

        

        <div class="card-content article-card-content">
            <div id="articleContent">
                <blockquote>
<p>本篇来源于[垠神]的<a target="_blank" rel="noopener" href="http://www.yinwang.org/blog-cn/2017/07/08/living-philosophy">生活的智慧</a>，觉得对生活有启迪转载于此</p>
</blockquote>
<p>我曾经写过一篇文章，叫『<a target="_blank" rel="noopener" href="http://www.yinwang.org/blog-cn/2015/11/21/programming-philosophy">编程的智慧</a>』。再加上我总写一些技术性的文章，不认识我的人可能还以为我是个技术狂人，只知道谈论技术，不会生活。其实跟我接触紧密的人都知道，我是一个很会生活的人。</p>

<p>确实，我花了很多心思来研究各种物品，它们的用法和组织方式。我用一种理性而智慧的方式对待生活中的方方面面，我的“生活智慧”并不亚于我的“编程智慧”。实际上这两种智慧的起源是相同的，它们都来自于一个人的内心，来自于他的本性。</p>

<p>一个生活邋里邋遢，不会收拾和安排，匆匆忙忙，不会花钱的人，他写出来的代码大概也差不多蹩脚。反之，如果一个人生活里很有条理，他编程的时候肯定也无法原谅自己写出混乱复杂的代码。这种人还有一个特点，他们能把钱花在最恰当的地方，而不是一味的省钱，给自己造成不方便。</p>

<p>实际上如果你开始琢磨生活里的智慧，就会发现很多编程的算法，几乎可以直接对应到生活里面。反之亦然，生活里的琐碎智慧，也可以启发编程的想法。</p>

<h3 id="整理房间">整理房间</h3>

<p>说到算法在生活里的应用，我首先想到的就是整理房间。你如何组织和摆放房间里的各种物品，使得它们美观温馨，不占太多地方，可以方便的拿到，用完之后又可以方便的放回去？你可能想不到，物品的管理，跟一种常见的编程概念有关系，那就是<a target="_blank" rel="noopener" href="http://baike.baidu.com/link?url=OIDztUHe2Igu6hS7ThUuHTc10QcVyEXQ1ED7qlRukBw7K8iZHjtSHt0RRjXA24hXIm2DKvMgtmdg6FrQiqy8Vrd4XaSy11_aRNP1vfQkzNfHWWIcbO_HNjDkYwNLo_khKwHyw-CEVtAT7ny21mmHOK">哈夫曼编码</a>。</p>

<p>整理房间这看似简单的问题，耗费了很多人一辈子的时间还没琢磨清楚。很多人的房子虽然还算干净，东西却是任意摆放的，缺乏规律和组织，而且他们舍不得花钱买恰当的工具，于是他们就遇到这些问题：</p>

<ul>
  <li>东西要用的时候就找不到了。</li>
  <li>很多东西摆在蹩脚的地方，你每次用它都得先挪开另外一些东西。用完放回去又得再次挪开那些东西。</li>
  <li>家里东西太多，空间不够摆放了，却全都舍不得扔。</li>
  <li>家里的储物空间其实挺多，柜子抽屉很多，却由于没有合理的组织，所以放不下很多东西。</li>
  <li>有些物品由于大小和形状特殊，不知道放在哪里好，放在哪里似乎都别扭。</li>
</ul>

<p>很多人每天都遇到这样的问题，却因为是“生活中的小事”，一直没有认真思考过，甚至认为自己是大忙人，赚大钱的，所以不屑于解决这种问题。而我则不一样，每当遇到这种问题，我都会像解决编程问题一样，认真而理性的思考，所以很多时候我会想出很合理的解决方案。</p>

<p>对于物品的管理，我有一种通用的“智慧”，类似于哈夫曼编码。在哈夫曼编码里面，最常用的字符用最短的编码来表示，不常用的字符用长一点的编码来表示。这种概念应用到生活里面，那就是把最常用的物品摆在最容易拿到的地方，把不常用的物品摆在不大容易拿到的地方。</p>

<p>举个例子，牙刷牙膏是每天都用的，所以我就把它们直接摆在浴室的案台上面。浴盐不是每天都用，我就把它放在下面的柜子里。越是不常用的东西，它在柜子里的位置也越靠里面。</p>

<h3 id="购置物品抛弃物品">购置物品，抛弃物品</h3>

<p>我发现那种家里东西太多，似乎没有空间存放的人，他们并没有仔细的思考过自己“需要”什么。他们舍不得扔掉旧的东西，即使自己永远也不会再用它们。他们会跟自己说：“这些东西当年可是花了多少多少钱买来的呀。舍不得扔！” 或者说：“虽然这个东西不值钱，可是勤俭节约是我们的光荣传统，积少成多。这也扔那也扔，买房子的钱从哪里来呀！”</p>

<p>从编程和设计的角度来看这种人，这种人就是没有明白所谓“极简主义”，而且他们并没有对物品的价值做过理性的计算和分析，就盲目的崇尚所谓“节约”。</p>

<p>做技术和设计的人也许都看过乔布斯设计房间的故事，还有那副标志性的照片。乔布斯坐在房间中间，旁边只有一盏灯，其它什么东西都没有…… 你也许没有想到，每一次搬家到遥远的地方，我也是这样开始生活的。我会从自己的物品里面挑选出自己最想留下来的，而把其它的都送人，卖掉或者扔掉。</p>

<p>到了新的住处，我会购置一盏灯，一张气垫床，这样让我晚上看得见，在一个星期之内有睡的地方。然后，我会很快去商店挑选一张非常舒服的床，不惜血本把它买下来。床垫，床单，枕头之类的贴身物品，直接关系到人的休息和健康，所以对于它们我会很舍得花钱。你也许不知道，不同质量的这些东西，感觉真的相差很多。</p>

<p>然后我会开始细心思考自己需要其它什么东西。我不会到商场里看到什么就买，每购置一件新的用品，我都会问自己这个问题：“我需要这个物品吗？它是否跟已有的物品的功能有冲突？它比起同样功能的物品有什么优势吗？它质量更好，更方便，更美观，更温馨？它会不会带来什么麻烦？会不会占用太多空间？它带来的价值相对于这些弊端，值得吗？”</p>

<p>我会权衡所有这些需求。如果我还没有类似功能的物品，那么我会上网搜索类似作用的东西，看看有没有更好的，然后根据自己的判断力和其他人的评价，从中挑选一个最好的。我经常使用美国商店和 Amazon 的无条件退货功能。对同样功能的物品，我有时候会买好几个不同的过来，经过几天的试用，留下其中最好的一个，把其它的都退了。有时候有的东西过了退货期或者退不掉了，就送人或者扔掉。</p>

<p>这样看上去似乎很残酷，很浪费，然而一旦我选好了一个物品，我以后就会一直记得它，我会记得我当初为什么选择了它，我会记得其它相似的产品有什么缺点。下一次再买类似的东西，我就会利用这些积累的智慧，只跟以前没见过的物品比较，而不会重复同样的过程。这样就不会给商家造成过多麻烦和过多的浪费。</p>

<p>由于这种极简主义的方法，我的房子里很少有多余的物品。</p>

<h3 id="什么是浪费">什么是浪费</h3>

<p>很多人盲目的反对“浪费”，认为我们应该勤俭节约，扔了本来还可以用，或者可以吃的东西就是浪费。所以这种人买了东西，总是会一直把它们留着，自己做了菜或者在饭店点了菜，总是要把它吃完。他们没有理性的意识到，使用不好的劣质的产品，让自己的身体或者心理受损，吃过多食物损害自己的身体，影响自己的睡眠，那才是真正的浪费。</p>

<p>使用高质量的，安全的产品，扔掉不好的产品，不吃过多的食物，表面上浪费了钱，实际上却是节约了钱。很多人，特别是老一辈的中国人，远远地低估了自己身体和健康的价值。年轻一点的时候拼命地省钱，克扣自己的身体。由于舍不得扔掉旧东西换新的，给自己的生活造成各种不方便，不愉快。</p>

<p>年纪大一点的时候，发现身体有点不好了，很多地方开始出问题，又因为想省钱而不去找好的医生，因为省钱而不使用最好的医疗产品和设备，所以问题不能在早期得到防治。到后来，问题就越来越严重，最后到了不可收拾的地步。最后，他们把以前“节省”下来所有的钱都赔进去了，甚至还要多几倍，却还是难以很好的保全自己的身体……</p>

<p>所以关于浪费这个事，我觉得每个人都应该做一些理性的分析，把账算清楚。你现在花掉几千块钱解决好生活上的一个问题，也许会在将来帮你节省几十万也说不定。有些人几毛钱都斤斤计较，你计较个几十年，总共加起来能节省多少？</p>

<p>有些人几块钱一大卷的专用垃圾袋都舍不得买，用超市购物留下来的袋子装垃圾。这种袋子经常是拎东西的时候被物品穿了孔的，所以他们就发现厨房的垃圾漏出来，臭气熏天，难以打扫干净。理解到这个道理，我从来就不用超市的购物袋来装垃圾。专用的垃圾袋很靠谱不会漏，价格微乎其微，我省那点钱干什么？</p>

<p>理性一点的人都会“优化”节约这件事，这就是算法的思想。我的技巧是优先在贵的东西上面节约，而在不那么贵的东西上面就放松一些。比如我在车子上花几天工夫研究，买一个好用又不贵，不容易出毛病的，一下子比别人多省下来几万块钱。然后我就可以在贴身用品上面多花钱，买最安全最舒服的。我就可以不吝惜钱去找好的医生，用最先进的医疗设施，保持身体的最佳状态。虽然为此花了好几千，但比起买车省下来的几万，只是一个零头而已。</p>

<p>相比之下，我认识一些人开着保时捷，自己家里的用品质量和安排方式却档次很低，该有的东西没有，自己的孩子病了还舍不得钱看医生。省下几乎所有其它开支去买保时捷，我也是醉了 :P</p>

<h3 id="价格和价值">价格和价值</h3>

<p>还有一项智慧，那就是物品的好坏很多时候不是价钱决定的。很多人以为最贵的东西一定是最好的，那是因为他们根本不会识货，所以就让价格来帮他们选择。经过许许多多的比较，我发现好的商品往往都不是最贵的，当然也不排除它们确实就是最贵的。</p>

<p>举一个例子，很多人都以为 Beats 的耳机是最好的，因为它卖的很贵。可是经过研究网上的评价，自己的试听，我发现这种流行的大牌子，其实都不咋滴。实际上 Beats 耳机的音色属于最差的之一，声音特别模糊特别钝，重音太重，以至于你没法听清楚音乐的旋律。</p>

<p>后来我发现，有一种耳机叫做“专业录音棚监听耳机”。这种耳机由于要给专业录音师使用，所以很重视对音乐原封不动的还原，而不是盲目的加强低音，让你感觉很有节奏感。于是我发现了 Audio-Technica ATH-M50，还有 AKG K-712。这两款耳机价格都不是特别贵，音质却跟 Beats 最贵的型号都天上地下，舒适程度也好很多。后来我发现凡是识货的人，几乎人手一个 ATH-M50！</p>

<p>另外 Beats 的蓝牙音箱也不怎么好。其实有个叫 Symphonized 的牌子，出产一种木制的<a target="_blank" rel="noopener" href="https://www.amazon.com/Symphonized-NXT-Walnut-Bluetooth-Compatible/dp/B00OVG190E">蓝牙音箱</a>。虽然价格只是 Beats 蓝牙音箱的零头，音质和最大音量都要比 Beats 高许多，还比 Beats 的音箱小巧。</p>

<h3 id="需求和品质">需求和品质</h3>

<p>之前说到我买了两个音质超级好的耳机，然而后来从“需求”的角度出发，我发现自己其实是不需要这种头戴耳机的。一来它们比较大，不方便携带，二来它们罩在耳朵上，还是容易引起耳朵感觉热。</p>

<p>我需要那么高的音质吗？其实有些耳塞的音质已经能满足我的需求，小巧又不会闷着耳朵。所以虽然我花了几百美元买了两个大耳机，平时在办公室用得最多的，却是一个叫 <a target="_blank" rel="noopener" href="https://www.amazon.com/Symphonized-Earbuds-Noise-isolating-Headphones-Luminescent/dp/B01D3QZB6U">Symphonized</a> 牌子的便宜耳塞。ATH-M50 放在办公桌上，只用过一两次。后来这两个大耳机就被我送人了 :P</p>

<p>这个 Symphonized 牌子的耳塞，在同等价格的耳塞里面不但音质最好，而且它放在耳朵里面的感觉，它的信号线的材质，都是感觉最舒服的。</p>

<p>这个故事告诉我，每个人的需求都不一样，你必须从自己的需求出发，而不能盲目的追求某种最好的品质，比如音质。耳机对于我的价值，不但在于音质，还在于它是否便于携带，耳朵是否舒适。在这么多方面权衡之后，我发现自己其实可以稍微降低对音质的“发烧”追求。</p>

<h3 id="价格不贵的好产品的例子">价格不贵的好产品的例子</h3>

<p>同样的原理，我发现了好些价格不贵，质量却比贵的还好的产品。比如：</p>

<ul>
  <li>家里的充电吸尘器，我选择了 Hoover，而不是贼贵，吸力还不怎么好的 Dyson。</li>
  <li>机器人吸尘器，我选择了一个老版本的 Neato，而不是最贵的 iRobot，也没有买最贵型号的 Neato，可以远程 WiFi 遥控的那种。</li>
  <li>电视机，我随便买了个非 4K 的 55 寸 Sony，而没有买昂贵的 4K 电视。实话说，看起来很爽，真没感觉少了什么。4K 电视完全没必要，片源稀少，而且真有人在乎那么高的清晰度吗？</li>
  <li>Amazon Basics 的苹果充电线，比苹果原厂的还结实耐用，摸起来感觉也好一些（塑料而不是橡胶感觉），价格却便宜很多。所以我买了好多根，每个房间两三根，车上两根，办公室一根，背包里还带一根跟充电宝一起用。这样就不用把一根充电线到处带。</li>
  <li>汽车，我买了个本田雅阁 V6，而不是奔驰宝马之类的。实话说，这个本田就是比我女票的奔驰好开。引擎代码被我 hack 了之后就更好开了 :)</li>
</ul>

<h3 id="功能覆盖不重复">功能覆盖不重复</h3>

<p>从需求出发，我精挑细选了很多的物品，它们的功能处于一种“覆盖而不重复”的状态。覆盖是说我的每一种需求，都有物品来满足它，不重复是说同一种需求没有重复的物品。这个不重复的特点，使得我在做一件事的时候，不需要每次都从不同的物品里面挑选。</p>

<p>举一个例子，我之前有很多的手机充电器。每买一个苹果的产品就有一个充电器，iPhone 充电器，iPad 充电器，…… 然后你就发现 iPhone 自带的充电器速度很慢，因为它的输出电流只有 1A。iPad 充电器输出有 2.2A，却只有一个输出端口。后来我从 Amazon 买了一些 Anker 的快速充电器，有好几个输出端口那种，每个输出都可以动态变化，最高可以超过 2A，可以用于所有的 USB 设备充电。</p>

<p>我在每个房间里都放了一个这种充电器，给它们配上足够多的充电线。这样我就可以在任何房间充电，而不用把手机放在固定的地方。这下子我就可以把 iPhone 的充电器都扔掉了，因为理智告诉我，有了 Anker 的充电器，我再也不会想用 iPhone 自带的充电器了。至于 iPad 的充电器，我拿到公司去用。因为在公司我只需要给一个设备充电，即我的手机，所以 iPad 的充电器正好满足这个需求，还很快。</p>

<p>同样的道理，每买一个 iPhone 我都会直接把它的耳机扔掉，因为它远远不如我的 Symphonized 耳塞，而且很容易从耳朵里滑落出来，基本没法用。</p>

<p>由于这种功能不重复的删除法，我的物品数量一直处于合理可控制的范围。还有一个好处就是要做一件事的时候我不需要进行选择，因为能做这件事的产品只有一种。</p>

<p>对于家具和衣物也是差不多的原理。如果你发现有东西两年都没有用过，那很有可能你永远都不会再用它。由于你不再需要它，不管你花了多少钱买来的，你都可以把它扔掉，送人，或者二手卖掉了。</p>

<h3 id="为多个位置购置同样的物品">为多个位置购置同样的物品</h3>

<p>有些物品是如此的常用，以至于你在家也需要它，在公司（学校）也需要它。这样的物品包括耳机，手机充电线，电脑充电器，茶壶，等等。如果这样的物品你只买了一个，你却需要在两个地方待（比如家里，公司里），那么你很可能需要把它两边带。</p>

<p>有些物品每次带走其实都需要花一点工夫，比如充电线需要拔下来折叠好，耳机需要把线收好，电脑充电器需要拔下来，收线。到了目的地，你又得把这些东西拿出来，把缠起来的线整理开。有些东西，比如电脑充电器，其实有一定的重量，背来背去的加重身体的负担，在大热天更加不舒服。还有茶壶，这东西每天都带来带去，那就很麻烦了。</p>

<p>如果你发现一个东西每次都需要带着走，那么你就可以考虑再买一个一模一样的物品，把它们分别放置在多个位置，这样你就不需要把它到处带了。</p>

<p>这就是为什么我的耳机，手机充电线，茶壶，电脑充电器之类的东西，总喜欢买两个。一个放在家里，一个放在公司。有些东西，比如充电宝和手机线，我还会在车上备置一个。因为很多时候开车出去玩都会忘了带充电宝和充电线，下车出去玩就开始担心手机没电，特别是在某些荒郊野外爬山的地方。所以在车上常备一套这种东西，出去的时候就总是有备用的。</p>

<p>我工作过的某公司曾经来了一个实习生，他经常跟我借手机充电线，理由是：“我的线今天又忘了带，忘在家里了。” 借人家东西一两次还好，后来他就开始天天借我的，因为我有一根线总是留在公司的。这个实习生就是没有明白我这里说的道理。一根充电线几块钱都懒得买，天天借人家的，给自己和他人都造成不方便。</p>

<h3 id="收纳物品">收纳物品</h3>

<p>精挑细选了物品，然后你还需要考虑如何整理和放置它们，这就叫做所谓“收纳”。收纳东西其实有很多的智慧，跟编程里面的概念非常类似。不会收纳物品的人，往往代码也会写的很乱，不容易理解，因为他们同样不明白代码应该如何“放置”。</p>

<p>有些人除了室内装好的柜子，抽屉，架子，从来不自己购置收纳产品，所以他们总是发现东西收拾不好，不知道该放哪里，或者放进去就找不到了。</p>

<p>这其实就是我在『编程的智慧』一文里面指出的问题，如果你的函数里面有太多行代码，就会很难理解。如果你把所有物品都放进一个大抽屉，那么这些东西就会杂乱无章，而且会随着抽屉的移动到处乱跑。</p>

<p>所以稍微懂得收纳一点的人，都会买一些小盒子或者筐子放在抽屉里，把东西分门别类的放进去，这样它们就不会乱动，而且很容易找到。</p>

<p>同样的原理也适用于柜子。很多人因为有了衣柜，就完全依赖于它里面的隔板。可是衣柜里的空间往往是很大块的，所以有时候你只放一点东西进去，它就会在逻辑上占据整个空间。你为了分门别类，只好把其它东西放进其它隔间。后来你就发现隔间不够用了，后来你就发现自己开始到处乱塞东西，然后就完全乱了。还有人喜欢把很多衣服叠在一起，放进衣柜的隔间里。但是这隔间挺大，所以衣服垒起来很高。这种垒起来的衣物是很容易像山崩一样垮下来的，造成很多的麻烦。</p>

<p>聪明一点的人都会使用一种好东西，叫做筐子。筐子是如此的有用，以至于我总是在考虑某个地方是不是该有一个筐子。我的衣橱里有各种大小的筐子，它们分门别类的容纳我的衣物：袜子，内裤，T恤，毛巾，…… 还有一个脏衣服筐，一个小的脏袜子筐。还有一个筐子里面铺上一张很舒服的毛巾，给我的猫睡觉用，这样他就不会睡我的其他筐子，搞得全是猫毛 :P</p>

<p><img src="http://wblearn.github.io/img/in-post/cat-in-basket2.jpg" width="240"></p>

<p>我的客厅里和厨房里也有各种筐子。分门别类的放置各种物品：书籍，遥控器，背包，食物，调料，…… 我还特别在出门的地方放几个筐子，这样我出门需要的东西都可以放在那里。比如上班用的电脑包，雨伞，帽子，钥匙等等。</p>

<p>另外，不但需要考虑大小，我还会考虑这些筐子的温馨程度。显然我不会用塑料盒子来装所有这些东西。对于卧室衣橱里的筐子，一般都是藤条编制，里面衬有印花美观的布料。客厅里也有很多这种筐子。大门口放背包的筐子是一个粗糙的藤条筐，没有布在里面，因为那些东西可能有一点脏，有时候在外面会放在地上的。</p>

<p>电线也是一个讨厌的东西，有些人的电线很长，就让它到处乱跑。其实好的办法是买一些尼龙搭扣的电线收纳带子，就像 ThinkPad 充电器上面带的那种，把过长的电线都折叠起来绑好。这样你的电视柜附近才会井然有序，容易打扫。</p>

<h3 id="容器过剩">容器过剩</h3>

<p>说到收纳物品，有可能走向另外一个极端，那就是家里的空容器太多。有人喜欢把物品的包装盒，食物的瓶子之类都留着，心想以后可以用作收纳容器。这种“以后用于收纳”的想法，就是很多人家里的储藏空间不够用的原因，因为这些空盒子，空瓶子占用了太多空间，而它们几乎永远是空着的，你永远也不会用它们装任何东西！</p>

<p>还有些人不丢盒子，原因是为了准备以后搬家的时候，可以有一个合适的盒子来保护那件物品，特别是一些电器，比如电饭煲，电视机之类的。所以他们的储物空间里堆满了各种电器的包装盒，以及里面的泡沫。我也曾经这样做，我买了一个很好的电饭煲，所以我希望搬家的时候它得到很好的保护。</p>

<p>可是后来我就发现家里的储物空间被这些盒子塞满了，于是我开始理性的思考这个问题。搬家是一件经常做的事情吗？不是。生活才是经常做的事情。我为了一件偶尔才做一次的事，损失了我每天都需要的储物空间，让我的生活变得蹩脚，不舒服。</p>

<p>而且电饭煲之类的东西，不管是多好的，花了多少钱买的，搬家时真的需要很好的保护吗？不是的。这些电器的包装盒之所以如此严密地保护它们，是为了防止商家在长途大量运输它们的时候撞坏，以至于无法销售。然而普通人搬家，其实是一件从容不迫，小心轻放，不大可能撞坏东西的事情。后来我发现，像电饭煲一类的东西，最多拿个厨房毛巾裹一下，跟其它厨具餐具一起放进一个大箱子里，就能在搬家时达到很好的保护效果了，根本不需要它原来的包装盒。</p>

<p>很多人留着包装盒是为了防止需要退货的情况，我也有这种需求。可是很多人把盒子放起来，然后就忘了它们在那里占据着空间，不知不觉中空间越来越少。我一般把包装盒保留几天，我会把它们放在很显眼的地方，比如厨房的入口处，这样我每次进入厨房都会看到它，这样我就不会忘记扔掉它。过了几天之后，我确信我喜欢这东西，不想退货，我就把这盒子及时扔掉。这样一来，我家里的储物空间全都装着有用的物品，而不是空的容器。</p>

<h3 id="购置很多一模一样的袜子">购置很多一模一样的袜子</h3>

<p>我从别人那里学过来的一个小窍门，那就是买很多一模一样的袜子。以前我的袜子都是这里买一双那里买一双，到了后来它们的颜色，样式，长度都不一样。每次洗了袜子你都需要给它们配对，卷起来收好。</p>

<p>但是如果你买很多一模一样的袜子，每天穿一双就扔进一个专门放“穿过袜子”的筐子。由于每双袜子只穿一次，它们就不会臭。然后你就可以两个星期甚至一个月才洗一次袜子。洗了袜子之后你不需要把它们配对折叠，直接拿出来扔进一个“干净袜子”的筐子就行了 :)</p>

<p>对于内裤和T恤，我也有类似的办法。每次洗了衣服，折那么多T恤都是一件讨厌的事情。我的T恤是不会皱的，所以后来我发现干脆不要叠T恤。买一个专门放T恤的筐子，洗了之后就把它们扔到里面，要用的时候抓出来就可以了。</p>

<p>由于使用了筐子来收纳这些小衣物，虽然筐子里面乱乱的，可是整个房间看起来却井井有条。</p>

<h3 id="对清洁用品的研究">对清洁用品的研究</h3>

<p>另外，清洁用品和清洁方式也是需要讲究的。很多人可能以为像我这样的“大师”肯定不屑于这种琐事，而其实我对家居清洁的研究，可以跟专业的清洁大妈相比。实际上，我曾经向专业的清洁大妈请教过，学会了挺多技巧 :P 下面我就稍微提点一下。因为清洁窍门内容太多，都可以单独写成一本书了，我这里肯定不可能面面俱到。</p>

<p>首先我想指出一种中国人很常见的误区，那就是他们的家里分“脏的地方”和“干净的地方”。很多人认为卫生间是脏的，湿的，马桶是脏的，阳台是脏的，而卧室是干净的。然后他们就把问题复杂化了，从客厅进卧室需要换鞋，从浴室出来需要换鞋，上阳台需要换鞋。他们在浴室里洗拖把，所以浴室里就有好几个盆子，分别有标签：洗脸的，洗内衣的，洗袜子的，给我洗脚的，洗拖把的，给老爸洗臭脚的…… 这么多盆子放在哪，是一个严重的问题。</p>

<p>很多家庭的某些物品被认为是“应该有灰”的地方，比如冰箱上面，马桶下面的座子，所以他们把那些地方置之不理。家里约定的规矩是，不准去碰那些地方！或者他们为了“方便打扫”，就盖一层塑料纸，甚至改一些报纸或者超市的促销广告在那些地方。然后你就发现整个屋子里有好几处地方盖着这种垃圾一样的纸，真个屋子就变得不温馨，不舒服了。他们心里想的是要是那些塑料纸粘了灰，就扔掉换了，但实际情况是那塑料纸上一直有一层很厚的灰尘，根本没人管它，跟没有那塑料纸没什么区别。</p>

<p>与其把家里搞得这么复杂，设立各种条款要家人遵守，你还不如想个办法，把所有区域都变得一样干净，这样你在家里只需要一双拖鞋就可以到处走，随地都可以坐，也不怕不小心碰一手的灰，“市容市貌”也好很多。你只需要买一个充电的手持吸尘器，就完全不需要担心这些灰尘的问题。</p>

<p>另外，家里其实根本不应该有拖把这种东西，还需要一个桶或者盆子来洗它。平时合理打扫的房子根本不应该有很多脏东西，所以不需要拖把这样重量级的清洁设备。你应该考虑买一个 Swiffer 之类的地板擦，它用的是一次性的擦布。地板上沾了一点灰尘渣滓，轻轻擦一下就干净，擦布脏了扔掉就是了，根本不需要清洗。</p>

<p>然后我想谈谈灰尘的处理。很多人不管什么东西都喜欢拿湿抹布擦，然后就发现本来漂浮在表面的灰尘，变成泥浆糊在了物体表面，后来就很难清洗干净了。很多人认为湿抹布可以防止灰尘飞扬，对健康好。可是他们没有发现，有更好的作法可以防止灰尘飞扬，却不需要把灰尘变成泥浆。</p>

<p>我很早发现了这个问题，发现真不能用湿抹布擦，后来我就开始用手持吸尘器去吸那些灰。这种吸尘器吸角落缝隙效果还可以，但是对于像茶几一样的有很大面的家具，覆盖就不是很好，总是留下很多灰尘。可是像茶几这样的东西，你又不能拿吸地板的大吸尘器去吸。怎么办呢？</p>

<p>后来，一位清洁大妈教会了我一个窍门，这个窍门就是 Swiffer。Swiffer 是一种地板擦，它配有两种一次性的擦纸，一种是干的，一种是湿的。干的那种擦纸可以吸附灰尘，把它用静电吸起来，而不会把灰尘推着到处跑，飞起来。这位清洁大妈的重大发现就是，Swiffer 的这种擦纸，不但可以安装在地拖上用来擦地，而且可以直接当成抹布拿在手上擦东西。</p>

<p>所以 Swiffer 擦纸就成为了新一代的鸡毛掸子，但跟鸡毛掸子不一样，它不会让灰尘飞起来。后来家具和物品上面的灰尘，基本就是用 Swiffer 擦纸吸掉的，然后再用湿的厨房纸巾一擦，就很干净了。Swiffer 的擦纸擦了之后就可以直接扔掉，省了不少事。</p>

<p>在美国，厨房纸巾是很常见的东西，擦脏了就扔掉。很多中国人还在用毛巾擦东西，擦脏了还得去用水淘它。一般你得有好几条抹布，有些抹布拿去擦了厕所，你就不能用来擦厨房了，你得记住哪条是“脏抹布”，哪条是“干净抹布”…… 麻不麻烦？由于厨房纸巾结实又不掉渣，甚至可以用水冲了再用，基本可以当毛巾来用，我很多时候擦东西都只用厨房纸巾，把一个地方擦干净了就扔掉。</p>

<p>但有一个例外，厨房纸巾用来擦玻璃或者镜子，无论如何都会留下一些微小的残渣，这在普通家具上面是看不到的。所以擦玻璃或者镜子，我一般不用纸巾，而是用微纤维抹布。这种微纤维抹布不会留下任何痕迹，弄脏了很容易清洗干净。另外，擦玻璃有专用的玻璃清洁剂（比如 Invisible Glass），不会留下任何痕迹的那种。</p>

<p>有些人擦厨房里的案台和灶具，喜欢在纸巾或者毛巾上面弄点餐具洗洁精，以为这样擦得干净。可是餐具洗洁精很不容易清干净，一旦放上去你就需要很多遍的清水才能去掉，这实在是太麻烦了。</p>

<p>其实最好的办法不是用餐具洗洁精，而是用像 Lysol，Clorox 之类的清洁剂或者擦巾。Lysol 之类的产品里面含有可挥发的氨，它去污力很强，无毒，不怎么伤手，而且擦了之后可以不用清水漂洗，自己就挥发掉了。</p>

<p>不过除非表面有清水擦不掉的脏东西，我一般也不用 Lysol，毕竟它还是有一点味道，而且很多时候你没必要使用它的杀菌能力。所以我一般就用清水，偶尔遇到清水擦不干净的，就用 Lysol。</p>

<p>总之，清洁用品和技巧有很多门类，我这里只是抛砖引玉，提示大家这里面有可以研究的学问。我就不多啰嗦了，具体的问题还得靠你自己去分析和处理。</p>

<h3 id="洗碗">洗碗</h3>

<p>洗碗是世界上最讨厌的活了。很多中国家庭里面常见的现象就是，吃了饭马上就必须有一个人去刷碗。这样很不好，本来享受了美食，应该惬意地喝点茶，聊聊天，家人之间交流感情。结果吃了饭，大家想的是该谁去洗碗，然后一个人去厨房洗碗，没法交流了。大家都不想洗就更麻烦，甚至伤感情。</p>

<p>对于这个问题，我的方案是，吃了饭大家都休息，不要去洗碗。如果需要腾出桌子喝茶，那可以把碗都扔到洗碗池里面，然后开始休息。想一下，你们那么急着洗碗到底有什么好处？没有。</p>

<p>还有一个更好的办法，那就是使用洗碗机。我觉得洗碗机是世界上最伟大的发明之一。洗碗机是美国房子的标配，很多在美国的中国人却把它用作碗柜，从来不启动它。他们觉得洗碗机会很费水费电，所以舍不得用。这是一个误区，如果你观察洗碗机的构造，就会发现它不会用很多水。它的原理是用一个很大的涡轮把少量的水高速喷出，水里面含有烈性的洗涤剂，这样冲刷餐具，达到清洁的目的。所以终究它不会用掉很多水，肯定比洗澡水要少很多，而且看起来也不怎么费电。</p>

<p>这个我是做过实验的，发现用洗碗机之后我的水电费并没有比不用它的时候增加多少。洗碗机的专用洗涤剂也不贵。我见过有人为了“节约”，想把洗涤剂的小包切开分成两次用，结果里面的液体流出来，很伤手。几毛钱一包的东西，就不必这么省了吧 :P</p>

<p>那么单身汉平时在家就吃一点东西，没有几个碗，放进洗碗机不是大材小用吗？我再告诉你一个诀窍吧。我单身的时候也有这种想法，但是后来发现一个窍门。那就是去买很多碗，盘子，叉子，筷子，就像你有一大家子人一样。我之前一个人的时候，给自己买了至少十套餐具，目的就是利用这个洗碗机。你每次吃饭拿出干净的碗和餐具，吃完就丢到洗碗机里，但不启动洗碗机，等它积累起来。等洗碗机装满了，或者过了两三天还没有装满，你就启动洗碗机…… 明白了吧？</p>

<h3 id="开车">开车</h3>

<p>说了这么多家务事，来讲讲出门的事情。很多中国人开车的时候很着急，喜欢紧跟在别人屁股后面，生怕旁边有车插进来。这种人到了美国还是一样的想法，要是别人老从旁边插进我的车道，那我不就慢下来了吗？所以我就紧跟前面车的屁股，这样别人就插不进来了。</p>

<p>这种人就是没有仔细分析过问题：</p>

<ul>
  <li>有多大的概率，有人会从旁边车道插到你的前面？</li>
  <li>对于每一辆插进来的车，它会延迟你多少时间到达？</li>
  <li>你是否在乎这点时间？</li>
</ul>

<p>等你仔细分析和观察之后，就发现就算你跟前车保持很长的距离，任凭别人插到你前面，也不会比原来的时间慢多少。因为汽车本来就跑得很快，而并不会有多少人会想插到你前面，不是每个人都像你这么急！</p>

<p>而且跟前车屁股太近有一个很不好的问题，那就是如果前车踩刹车，你就得踩刹车。到后来你的神经就完全被前面的司机控制了，别人刹车你得很快做出反应，不然就可能撞车。你当然可以随时保持警惕，避免撞车，但如果你保持比较大的车距，那么就不需要这么紧张了。你可以有比较长的反应时间，优哉游哉的开你的车，不受别人的左右。</p>

<h3 id="各种贴膜">各种贴膜</h3>

<p>经常看到有人拿着一个贴膜的手机，那膜都磨花得不行了，还有些人的膜很硬，导致触屏响应严重受影响。经过一番道理，我说服了他们其中一些人把膜扔了。扔掉之后，他们才发现原来的屏幕是那么的好看那么的亮，响应是如此的流畅！然后他们才开始遗憾，为什么自己一直在用一个比现在差很多的手机。</p>

<p>我对人们对手机屏幕的爱护真是深感震撼。要是他们有那么爱护自己的身体，那该多好啊。</p>

<p>我是怎么说服他们揭掉手机膜的呢？我告诉他们，我的第一台智能手机也贴了膜。等到换新手机的时候，我把它的膜揭开，然后用钥匙和刀子在上面使劲的划了好半天。结果，屏幕完好无损，连一点细微的划痕都没有！</p>

<p>经过很简单的实验，你就可以让自己相信手机屏幕的玻璃是如此之硬，它是完全不怕钥匙之类的硬物摩擦的。我拿来做试验的手机是 2008 年的产物了，现在的手机屏玻璃又更新换代，肯定更不怕划伤了。所以手机贴膜真是多此一举，害得自己不能更好的享受重金买来的物品。</p>

<p>还有一种常见的“膜”，就是木头桌子上面放个胶皮或者玻璃板。很多人买了很好的实木桌子，觉得价格很贵，所以又买了一张胶皮来保护它。后来又发现这胶皮价格也不便宜，所以又买了几张小胶皮来保护这张大胶皮。所有的碗都必须放在小胶皮上面…… 最后，你就发现你用的不是豪华的实木餐桌了，而是一张胶皮桌子。你花了几千块钱，结果买了一张胶皮桌子！</p>

<p>实际上实木桌子根本就不需要保护，它非常的结实耐用。木头给人的感觉是温馨舒服的，却用一张胶皮盖起来，完全抹杀了这种感觉。如果没有胶皮，正常的磨损不可避免，然而桌子的魅力不会改变。这些微小的划痕，正好增加了这种木头桌子的魅力，不是吗。我就见过商店里卖这种有划痕和烫伤的实木桌子的，中间还有树洞。卖的很贵，因为它很有感觉。</p>

<p>不过这种桌子上面，倒可以在吃饭的位置放上漂亮的餐垫，这样吃饭的时候餐具不会在上面发出磕碰声，感觉更加舒服温馨。</p>

<p>同样的道理，你也不应该把各种遥控器放进保护套。它影响了你对遥控器的使用感觉，有时候模糊得看不清楚按钮上的字，却并不能让遥控器用得更久。实际情况是电器的换代速度比遥控器的寿命要短很多，电器过时换代的时候，遥控器往往还是好好的。而且像遥控器那么便宜的东西，真有必要保护它吗？上网搜一下“万能遥控器”卖多少钱就知道了。</p>

<p>我买车的时候，车行向我推荐一种“皮革保护涂料”，说喷上去之后它可以在皮革表面形成一层保护膜，可以使座椅不怕水，不怕脏东西，这样车再卖出去的时候可以保值。我拒绝了这个推销，调侃道：“我希望坐在皮革上面，而不是坐在不知道什么化学材料做成的涂料上面 :)”</p>

<p>这是一样的道理：我买了皮革座椅的车子，我希望享受它，而不是损害自己的舒适程度来保护它。买来的物品是为人服务的，而不是用来保护起来保值的。后来这车子开了几年，座椅还像新的一样，这说明这些什么皮座椅保护涂料根本就没有必要。</p>

<p>那么同样的原理，是不是说我们不需要给 iPhone 买保护壳呢？不是的，iPhone 是一个不幸的个例。因为 iPhone 本来的壳子太滑太圆了，你不给它装个壳子是注定要滑落到地上的！所以不得已，你是得给 iPhone 买个壳子。</p>

<h3 id="中国人的洁癖">中国人的洁癖</h3>

<p>很多中国人有一种非理性的洁癖，或者“健康癖”。他们总觉得外面是脏的，所以如果出去坐过的裤子，就不能再坐在家里的床上或者沙发上。如果你去医院坐过，那可就得一回家就把裤子脱下来洗了，完全不可以碰家里的东西，万一你做过的椅子是皮肤病人或者性病病人坐过的呢！</p>

<p>还有人觉得洗了外衣的洗衣机就不可以再用来洗内衣，因为外衣被认为是脏的，而内衣接触皮肤，应该很干净才对。甚至有人专门买了“小小神童洗衣机”，专门拿来洗内衣内裤。如果没有这种洗衣机，他们的家里会分别有洗各种东西的盆子：洗袜子的，洗内衣的，……</p>

<p>所有这些都是没有经过科学分析得出的结论。这些人似乎并不理解病菌是如何生存，如何传播的，就盲目的认为在外面坐过的裤子上会有对身体有害的病菌。</p>

<p>这里我不得不称赞一下美国人的理性思维。我曾经问过好几个美国人，你们怎么洗鞋子啊？他们都觉得这个问题很奇怪：“什么？不就是丢进洗衣机吗？” 这显然是大部分中国人觉得不可思议的事情，他们会跟你说那是因为美国很干净，所以才可以这样子。</p>

<p>然而并非如此，美国人可以穿着那鞋子到处走，那鞋子可能去过中国，去过非洲，到很脏的厕所里踩过…… 回到美国，忘了这些事，把鞋子丢进洗衣机…… 嘿嘿，恶心吧？</p>

<p>然而事实就是从来没有人因此生病，因为病菌不可能通过那样的方式传播。粘在鞋子上的病菌，必须要有营养和水才能生存，而鞋子上就算粘了它们可以生存的粘液，过段时间也会干掉。无论如何，鞋子进了洗衣机，病菌都会被洗衣液给消灭掉。所有的灰尘之类，会随着漂洗冲到下水道里去。</p>

<p>我亲自试验过用洗衣机洗鞋子，鞋子当然要单独洗了。你最好丢一些旧毛巾跟鞋子一起洗，这样旧毛巾可以帮助在里面擦洗鞋子。倒上洗衣液，启动洗衣机就完事了。洗了之后再看洗衣机的桶，没有发现什么残留的脏东西。之后再拿来洗衣服，内衣，也没有发现任何问题。</p>

<p>如果你不放心，可以买专用的洗衣机清洁剂，在这之后丢进洗衣机，启动自清洗程序。总之，过度的担心卫生和健康，似乎是中国人的一种通病，也是他们的生活过度复杂的原因。世界上并没有那么多致病的细菌，你得理解它们的生存和传播方式，而不是盲目的认为它们可以粘在任何地方。</p>

<h3 id="过时的洗脸盆">过时的洗脸盆</h3>

<p>最近十多年的生活，我发现有一件东西从我的生活中消失了，那就是盆子：洗脸盆，洗脚盆，搓衣盆…… 可是我发现很多中国人的家里仍然有盆子这东西，所以我很纳闷为什么我曾经需要它们，而为什么现在不再需要。</p>

<p>后来我发现盆子从我生活中消失的原因，是跟热水器的出现密不可分的。在很早的时候，人们没有燃气热水器，所以要洗脸，只有用脸盆来混合冷水和开水。先把脸盆装点冷水，然后用暖水瓶加一些开水在里面，然后放一条洗脸毛巾进去弄湿了，拿出来洗脸。</p>

<p>燃气热水器的出现改变了这个局面。因为水龙头放出来的水直接可以调温，所以很多人开始直接用手从水龙头捧热水来洗脸，而不再需要一个容器来存放这些热水。使用流水洗脸不但更加卫生，而且消除了对洗脸盆这种东西的需求。</p>

<p>可是很多年长的人不理解，看到现代家居里面的“洗脸池”，还以为那是用来放热水在里面，然后才放毛巾进去洗脸。这种不理解的人，往往觉得洗脸池很脏，不知道该怎么用它，所以仍然去买塑料洗脸盆来接水洗脸。由于洗脸池的形状构造，他们发现这非常不方便，不顺手，而其实只是他们不理解它的用法。</p>

<p>如果你理解了热水器和流水洗脸的原理，就会发现这种所谓“洗脸池”，其实并不是用来盛放洗脸水的。它只是用来接你洗过脸，刷过牙的脏水的。所以它根本不需要特别干净，多人共用这种池子，一点问题也没有。</p>

<p>同样的原理，刷牙其实也可以不用杯子。因为水龙头就在面前，你完全可以用手捧一点水到嘴里，那就足够用来刷牙了。所以我选了一个漂亮的杯子用来放牙刷，而从来不用它来装水。另外我发现有些人喜欢把牙膏也放进杯子里，由于牙膏很胖很重，那会使得取用变得很蹩脚，有时候杯子还会因为重心不稳被弄翻。其实牙膏放在案台上就可以了，只有牙刷需要放进杯子里，因为它上面沾了水。</p>

<p>我家里只有一种盆子，那就是“足疗盆”。我发现洗脸池和浴缸都不能达到这个功效，所以我买了一个。放上一盆热水，加上舒缓筋骨的浴盐，放在漂亮的地毯和毛巾上面，把脚放进去，猫咪在旁边陪伴，真是一种惬意的享受 :)</p>

<p><img src="http://wblearn.github.io/img/in-post/foot-bath.jpg" width="300"></p>

<h3 id="铲屎倌的秘诀">铲屎倌的秘诀</h3>

<p>我养了一只猫，对于养猫我也有很多的智慧，把他管理的井井有条，家里一点味道都没有。这里我只透露一个秘密，那就是我用了 <a target="_blank" rel="noopener" href="http://www.littergenie.com">Litter Genie</a>。</p>

<p>这是一个不起眼的塑料盒子，专门用来装猫屎的。它的特点是非常好的隔离效果，猫屎进去之后就完全闻不到味道了。你可以每天铲猫屎放进去，等几个星期才一起拿去扔掉也不会有问题。</p>

<p>起初朋友介绍给我的时候，我还不以为然的说，我每天铲屎放进一个垃圾袋，马上拿去扔了不就行了？等到真正用了 Litter Genie 几个月之后，才发现没有它是多么的不方便，因为我已经习惯了简单的：铲屎，盖上，完事。</p>

<p>我养猫的经验也可以写成一本书了，所以这里限于篇幅就不多说了 :P</p>

<h3 id="总结">总结</h3>

<p>嗯，写了这么多，我自己都有点糊涂了，有点没条理了。生活的智慧当然不止这一点，它是博大精深的，所以我这里讲的一点东西只是抛砖引玉，希望帮助大家追求有品质的生活。如果你有什么生活小窍门很多人不知道的，欢迎来信跟我交流。如果你知道文中提到的美国产品（比如 Lysol）的中国等价物，也请告诉我。</p>


                
            </div>
            <hr/>

            

    <div class="reprint" id="reprint-statement">
        
            <div class="reprint__author">
                <span class="reprint-meta" style="font-weight: bold;">
                    <i class="fas fa-user">
                        文章作者:
                    </i>
                </span>
                <span class="reprint-info">
                    <a href="/programming/about" rel="external nofollow noreferrer">ZJZ</a>
                </span>
            </div>
            <div class="reprint__type">
                <span class="reprint-meta" style="font-weight: bold;">
                    <i class="fas fa-link">
                        文章链接:
                    </i>
                </span>
                <span class="reprint-info">
                    <a href="https://zjzsoft.gitee.io/programming/programming/2024/01/19/%E7%94%9F%E6%B4%BB%E7%9A%84%E6%99%BA%E6%85%A7/">https://zjzsoft.gitee.io/programming/programming/2024/01/19/%E7%94%9F%E6%B4%BB%E7%9A%84%E6%99%BA%E6%85%A7/</a>
                </span>
            </div>
            <div class="reprint__notice">
                <span class="reprint-meta" style="font-weight: bold;">
                    <i class="fas fa-copyright">
                        版权声明:
                    </i>
                </span>
                <span class="reprint-info">
                    本博客所有文章除特別声明外，均采用
                    <a href="https://creativecommons.org/licenses/by/4.0/deed.zh" rel="external nofollow noreferrer" target="_blank">CC BY 4.0</a>
                    许可协议。转载请注明来源
                    <a href="/programming/about" target="_blank">ZJZ</a>
                    !
                </span>
            </div>
        
    </div>

    <script async defer>
      document.addEventListener("copy", function (e) {
        let toastHTML = '<span>复制成功，请遵循本文的转载规则</span><button class="btn-flat toast-action" onclick="navToReprintStatement()" style="font-size: smaller">查看</a>';
        M.toast({html: toastHTML})
      });

      function navToReprintStatement() {
        $("html, body").animate({scrollTop: $("#reprint-statement").offset().top - 80}, 800);
      }
    </script>



            <div class="tag_share" style="display: block;">
                <div class="post-meta__tag-list" style="display: inline-block;">
                    
                        <div class="article-tag">
                            
                                <a href="/programming/tags/%E9%97%B2%E8%B0%88/">
                                    <span class="chip bg-color">闲谈</span>
                                </a>
                            
                                <a href="/programming/tags/%E5%B8%B8%E8%AF%86/">
                                    <span class="chip bg-color">常识</span>
                                </a>
                            
                        </div>
                    
                </div>
                <div class="post_share" style="zoom: 80%; width: fit-content; display: inline-block; float: right; margin: -0.15rem 0;">
                    <link rel="stylesheet" type="text/css" href="/programming/libs/share/css/share.min.css">
<div id="article-share">

    
    <div class="social-share" data-sites="twitter,facebook,google,qq,qzone,wechat,weibo,douban,linkedin" data-wechat-qrcode-helper="<p>微信扫一扫即可分享！</p>"></div>
    <script src="/programming/libs/share/js/social-share.min.js"></script>
    

    

</div>

                </div>
            </div>
            
                <div id="reward">
    <a href="#rewardModal" class="reward-link modal-trigger btn-floating btn-medium waves-effect waves-light red">赏</a>

    <!-- Modal Structure -->
    <div id="rewardModal" class="modal">
        <div class="modal-content">
            <a class="close modal-close"><i class="fas fa-times"></i></a>
            <h4 class="reward-title">你的支持是我前进的动力！</h4>
            <div class="reward-content">
                <div class="reward-tabs">
                    <ul class="tabs row">
                        <li class="tab col s6 alipay-tab waves-effect waves-light"><a href="#alipay">支付宝</a></li>
                        <li class="tab col s6 wechat-tab waves-effect waves-light"><a href="#wechat">微 信</a></li>
                    </ul>
                    <div id="alipay">
                        <img src="/programming/medias/reward/alipay.png" class="reward-img" alt="支付宝打赏二维码">
                    </div>
                    <div id="wechat">
                        <img src="/programming/medias/reward/wechat.png" class="reward-img" alt="微信打赏二维码">
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

<script>
    $(function () {
        $('.tabs').tabs();
    });
</script>

            
        </div>
    </div>

    

    

    

    

    

    

    

    

    

<article id="prenext-posts" class="prev-next articles">
    <div class="row article-row">
        
        <div class="article col s12 m6" data-aos="fade-up">
            <div class="article-badge left-badge text-color">
                <i class="fas fa-chevron-left"></i>&nbsp;上一篇</div>
            <div class="card">
                <a href="/programming/2024/01/19/Python%E6%89%B9%E9%87%8F%E5%A4%84%E7%90%86Word%E6%96%87%E4%BB%B6/">
                    <div class="card-image">
                        
                        
                        <img src="/programming/medias/featureimages/3.jpg" class="responsive-img" alt="Python批量处理Word文件">
                        
                        <span class="card-title">Python批量处理Word文件</span>
                    </div>
                </a>
                <div class="card-content article-content">
                    <div class="summary block-with-text">
                        
                            
                        
                    </div>
                    <div class="publish-info">
                        <span class="publish-date">
                            <i class="far fa-clock fa-fw icon-date"></i>2024-01-19
                        </span>
                        <span class="publish-author">
                            
                            <i class="fas fa-bookmark fa-fw icon-category"></i>
                            
                            <a href="/programming/categories/%E7%BC%96%E7%A8%8B/" class="post-category">
                                    编程
                                </a>
                            
                            
                        </span>
                    </div>
                </div>
                
                <div class="card-action article-tags">
                    
                    <a href="/programming/tags/word/">
                        <span class="chip bg-color">word</span>
                    </a>
                    
                    <a href="/programming/tags/python/">
                        <span class="chip bg-color">python</span>
                    </a>
                    
                </div>
                
            </div>
        </div>
        
        
        <div class="article col s12 m6" data-aos="fade-up">
            <div class="article-badge right-badge text-color">
                下一篇&nbsp;<i class="fas fa-chevron-right"></i>
            </div>
            <div class="card">
                <a href="/programming/2024/01/16/Word%E6%96%87%E6%A1%A3%E6%89%B9%E9%87%8F%E6%93%8D%E4%BD%9C/">
                    <div class="card-image">
                        
                        
                        <img src="/programming/medias/featureimages/11.jpg" class="responsive-img" alt="Word文档批量操作">
                        
                        <span class="card-title">Word文档批量操作</span>
                    </div>
                </a>
                <div class="card-content article-content">
                    <div class="summary block-with-text">
                        
                            
                        
                    </div>
                    <div class="publish-info">
                            <span class="publish-date">
                                <i class="far fa-clock fa-fw icon-date"></i>2024-01-16
                            </span>
                        <span class="publish-author">
                            
                            <i class="fas fa-bookmark fa-fw icon-category"></i>
                            
                            <a href="/programming/categories/%E7%BC%96%E7%A8%8B/" class="post-category">
                                    编程
                                </a>
                            
                            
                        </span>
                    </div>
                </div>
                
                <div class="card-action article-tags">
                    
                    <a href="/programming/tags/aardio/">
                        <span class="chip bg-color">aardio</span>
                    </a>
                    
                    <a href="/programming/tags/word/">
                        <span class="chip bg-color">word</span>
                    </a>
                    
                </div>
                
            </div>
        </div>
        
    </div>
</article>

</div>



<!-- 代码块功能依赖 -->
<script type="text/javascript" src="/programming/libs/codeBlock/codeBlockFuction.js"></script>


  <!-- 是否加载使用自带的 prismjs. -->
  <script type="text/javascript" src="/programming/libs/prism/prism.min.js"></script>


<!-- 代码语言 -->

<script type="text/javascript" src="/programming/libs/codeBlock/codeLang.js"></script>


<!-- 代码块复制 -->

<script type="text/javascript" src="/programming/libs/codeBlock/codeCopy.js"></script>


<!-- 代码块收缩 -->

<script type="text/javascript" src="/programming/libs/codeBlock/codeShrink.js"></script>



    </div>
    <div id="toc-aside" class="expanded col l3 hide-on-med-and-down">
        <div class="toc-widget card" style="background-color: white;">
            <div class="toc-title"><i class="far fa-list-alt"></i>&nbsp;&nbsp;目录</div>
            <div id="toc-content"></div>
        </div>
    </div>
</div>

<!-- TOC 悬浮按钮. -->

<div id="floating-toc-btn" class="hide-on-med-and-down">
    <a class="btn-floating btn-large bg-color">
        <i class="fas fa-list-ul"></i>
    </a>
</div>


<script src="/programming/libs/tocbot/tocbot.min.js"></script>
<script>
    $(function () {
        tocbot.init({
            tocSelector: '#toc-content',
            contentSelector: '#articleContent',
            headingsOffset: -($(window).height() * 0.4 - 45),
            collapseDepth: Number('0'),
            headingSelector: 'h2, h3, h4'
        });

        // Set scroll toc fixed.
        let tocHeight = parseInt($(window).height() * 0.4 - 64);
        let $tocWidget = $('.toc-widget');
        $(window).scroll(function () {
            let scroll = $(window).scrollTop();
            /* add post toc fixed. */
            if (scroll > tocHeight) {
                $tocWidget.addClass('toc-fixed');
            } else {
                $tocWidget.removeClass('toc-fixed');
            }
        });

        
        /* 修复文章卡片 div 的宽度. */
        let fixPostCardWidth = function (srcId, targetId) {
            let srcDiv = $('#' + srcId);
            if (srcDiv.length === 0) {
                return;
            }

            let w = srcDiv.width();
            if (w >= 450) {
                w = w + 21;
            } else if (w >= 350 && w < 450) {
                w = w + 18;
            } else if (w >= 300 && w < 350) {
                w = w + 16;
            } else {
                w = w + 14;
            }
            $('#' + targetId).width(w);
        };

        // 切换TOC目录展开收缩的相关操作.
        const expandedClass = 'expanded';
        let $tocAside = $('#toc-aside');
        let $mainContent = $('#main-content');
        $('#floating-toc-btn .btn-floating').click(function () {
            if ($tocAside.hasClass(expandedClass)) {
                $tocAside.removeClass(expandedClass).hide();
                $mainContent.removeClass('l9');
            } else {
                $tocAside.addClass(expandedClass).show();
                $mainContent.addClass('l9');
            }
            fixPostCardWidth('artDetail', 'prenext-posts');
        });
        
    });
</script>

    

</main>




    <footer class="page-footer bg-color">
    
        <link rel="stylesheet" href="/programming/libs/aplayer/APlayer.min.css">
<style>
    .aplayer .aplayer-lrc p {
        
        display: none;
        
        font-size: 12px;
        font-weight: 700;
        line-height: 16px !important;
    }

    .aplayer .aplayer-lrc p.aplayer-lrc-current {
        
        display: none;
        
        font-size: 15px;
        color: #42b983;
    }

    
    .aplayer.aplayer-fixed.aplayer-narrow .aplayer-body {
        left: -66px !important;
    }

    .aplayer.aplayer-fixed.aplayer-narrow .aplayer-body:hover {
        left: 0px !important;
    }

    
</style>
<div class="">
    
    <div class="row">
        <meting-js class="col l8 offset-l2 m10 offset-m1 s12"
                   server="netease"
                   type="playlist"
                   id="503838841"
                   fixed='true'
                   autoplay='false'
                   theme='#42b983'
                   loop='all'
                   order='random'
                   preload='auto'
                   volume='0.7'
                   list-folded='true'
        >
        </meting-js>
    </div>
</div>

<script src="/programming/libs/aplayer/APlayer.min.js"></script>
<script src="/programming/libs/aplayer/Meting.min.js"></script>

    

    <div class="container row center-align"
         style="margin-bottom: 0px !important;">
        <div class="col s12 m8 l8 copy-right">
            Copyright&nbsp;&copy;
            
                <span id="year">2019-2024</span>
            
            <a href="/programming/about" target="_blank">ZJZ</a>
            |&nbsp;Powered by&nbsp;<a href="https://hexo.io/" target="_blank">Hexo</a>
            |&nbsp;Theme&nbsp;<a href="https://github.com/blinkfox/hexo-theme-matery" target="_blank">Matery</a>
            
            <br>
            
            
            
                
            
            
                <span id="busuanzi_container_site_pv">
                &nbsp;|&nbsp;<i class="far fa-eye"></i>&nbsp;总访问量:&nbsp;
                    <span id="busuanzi_value_site_pv" class="white-color"></span>
            </span>
            
            
                <span id="busuanzi_container_site_uv">
                &nbsp;|&nbsp;<i class="fas fa-users"></i>&nbsp;总访问人数:&nbsp;
                    <span id="busuanzi_value_site_uv" class="white-color"></span>
            </span>
            
            <br>

            <!-- 运行天数提醒. -->
            
            <br>
            
        </div>
        <div class="col s12 m4 l4 social-link social-statis">
    <a href="https://github.com/zjzsoft" class="tooltipped" target="_blank" data-tooltip="访问我的GitHub" data-position="top" data-delay="50">
        <i class="fab fa-github"></i>
    </a>



    <a href="mailto:291473238@qq.com" class="tooltipped" target="_blank" data-tooltip="邮件联系我" data-position="top" data-delay="50">
        <i class="fas fa-envelope-open"></i>
    </a>







    <a href="tencent://AddContact/?fromId=50&fromSubId=1&subcmd=all&uin=291473238" class="tooltipped" target="_blank" data-tooltip="QQ联系我: 291473238" data-position="top" data-delay="50">
        <i class="fab fa-qq"></i>
    </a>







</div>
    </div>
</footer>

<div class="progress-bar"></div>


    <!-- 搜索遮罩框 -->
<div id="searchModal" class="modal">
    <div class="modal-content">
        <div class="search-header">
            <span class="title"><i class="fas fa-search"></i>&nbsp;&nbsp;搜索</span>
            <input type="search" id="searchInput" name="s" placeholder="请输入搜索的关键字"
                   class="search-input">
        </div>
        <div id="searchResult"></div>
    </div>
</div>

<script type="text/javascript">
$(function () {
    var searchFunc = function (path, search_id, content_id) {
        'use strict';
        $.ajax({
            url: path,
            dataType: "xml",
            success: function (xmlResponse) {
                // get the contents from search data
                var datas = $("entry", xmlResponse).map(function () {
                    return {
                        title: $("title", this).text(),
                        content: $("content", this).text(),
                        url: $("url", this).text()
                    };
                }).get();
                var $input = document.getElementById(search_id);
                var $resultContent = document.getElementById(content_id);
                $input.addEventListener('input', function () {
                    var str = '<ul class=\"search-result-list\">';
                    var keywords = this.value.trim().toLowerCase().split(/[\s\-]+/);
                    $resultContent.innerHTML = "";
                    if (this.value.trim().length <= 0) {
                        return;
                    }
                    // perform local searching
                    datas.forEach(function (data) {
                        var isMatch = true;
                        var data_title = data.title.trim().toLowerCase();
                        var data_content = data.content.trim().replace(/<[^>]+>/g, "").toLowerCase();
                        var data_url = data.url;
                        data_url = data_url.indexOf('/') === 0 ? data.url : '/' + data_url;
                        var index_title = -1;
                        var index_content = -1;
                        var first_occur = -1;
                        // only match artiles with not empty titles and contents
                        if (data_title !== '' && data_content !== '') {
                            keywords.forEach(function (keyword, i) {
                                index_title = data_title.indexOf(keyword);
                                index_content = data_content.indexOf(keyword);
                                if (index_title < 0 && index_content < 0) {
                                    isMatch = false;
                                } else {
                                    if (index_content < 0) {
                                        index_content = 0;
                                    }
                                    if (i === 0) {
                                        first_occur = index_content;
                                    }
                                }
                            });
                        }
                        // show search results
                        if (isMatch) {
                            str += "<li><a href='" + data_url + "' class='search-result-title'>" + data_title + "</a>";
                            var content = data.content.trim().replace(/<[^>]+>/g, "");
                            if (first_occur >= 0) {
                                // cut out 100 characters
                                var start = first_occur - 20;
                                var end = first_occur + 80;
                                if (start < 0) {
                                    start = 0;
                                }
                                if (start === 0) {
                                    end = 100;
                                }
                                if (end > content.length) {
                                    end = content.length;
                                }
                                var match_content = content.substr(start, end);
                                // highlight all keywords
                                keywords.forEach(function (keyword) {
                                    var regS = new RegExp(keyword, "gi");
                                    match_content = match_content.replace(regS, "<em class=\"search-keyword\">" + keyword + "</em>");
                                });

                                str += "<p class=\"search-result\">" + match_content + "...</p>"
                            }
                            str += "</li>";
                        }
                    });
                    str += "</ul>";
                    $resultContent.innerHTML = str;
                });
            }
        });
    };

    searchFunc('/programming/search.xml', 'searchInput', 'searchResult');
});
</script>

    <!-- 白天和黑夜主题 -->
<div class="stars-con">
    <div id="stars"></div>
    <div id="stars2"></div>
    <div id="stars3"></div>  
</div>

<script>
    function switchNightMode() {
        $('<div class="Cuteen_DarkSky"><div class="Cuteen_DarkPlanet"></div></div>').appendTo($('body')),
        setTimeout(function () {
            $('body').hasClass('DarkMode') 
            ? ($('body').removeClass('DarkMode'), localStorage.setItem('isDark', '0'), $('#sum-moon-icon').removeClass("fa-sun").addClass('fa-moon')) 
            : ($('body').addClass('DarkMode'), localStorage.setItem('isDark', '1'), $('#sum-moon-icon').addClass("fa-sun").removeClass('fa-moon')),
            
            setTimeout(function () {
            $('.Cuteen_DarkSky').fadeOut(1e3, function () {
                $(this).remove()
            })
            }, 2e3)
        })
    }
</script>

    <!-- 回到顶部按钮 -->
<div id="backTop" class="top-scroll">
    <a class="btn-floating btn-large waves-effect waves-light" href="#!">
        <i class="fas fa-arrow-up"></i>
    </a>
</div>


    <script src="/programming/libs/materialize/materialize.min.js"></script>
    <script src="/programming/libs/masonry/masonry.pkgd.min.js"></script>
    <script src="/programming/libs/aos/aos.js"></script>
    <script src="/programming/libs/scrollprogress/scrollProgress.min.js"></script>
    <script src="/programming/libs/lightGallery/js/lightgallery-all.min.js"></script>
    <script src="/programming/js/matery.js"></script>

    

    
    
    

    <!-- 雪花特效 -->
    

    <!-- 鼠标星星特效 -->
    

     
        <script src="https://ssl.captcha.qq.com/TCaptcha.js"></script>
        <script src="/programming/libs/others/TencentCaptcha.js"></script>
        <button id="TencentCaptcha" data-appid="xxxxxxxxxx" data-cbfn="callback" type="button" hidden></button>
    

    <!-- Baidu Analytics -->

    <!-- Baidu Push -->

<script>
    (function () {
        var bp = document.createElement('script');
        var curProtocol = window.location.protocol.split(':')[0];
        if (curProtocol === 'https') {
            bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
        } else {
            bp.src = 'http://push.zhanzhang.baidu.com/push.js';
        }
        var s = document.getElementsByTagName("script")[0];
        s.parentNode.insertBefore(bp, s);
    })();
</script>

    
    <script src="/programming/libs/others/clicklove.js" async="async"></script>
    
    
    <script async src="/programming/libs/others/busuanzi.pure.mini.js"></script>
    

    

    

    <!--腾讯兔小巢-->
    
    

    

    

    
    <script src="/programming/libs/instantpage/instantpage.js" type="module"></script>
    

</body>

</html>
